home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / mmdf / mmdf-IIb.43 / conf / uclvax2 / conf.c < prev    next >
Encoding:
C/C++ Source or Header  |  1986-10-10  |  8.5 KB  |  240 lines

  1. /*            COMPILE-TIME CONFIGURATION FILE WITH SITE-DEPENDENT INFORMATION
  2.  *
  3.  *      This file contains general host-dependent variable info that
  4.  *   the message system needs to have.
  5.  */
  6.  
  7. #include "util.h"
  8. #include "mmdf.h"
  9. #include "ap_norm.h"
  10.  
  11. char *mmtailor = "/etc/mmdf/mmdftailor";
  12.                 /* location of external tailoring file  */
  13.  
  14. /* ************************  PUBLIC NAMES  ****************************** */
  15.  
  16. char
  17.     *locname = "UCL-CS",   /* Generic name for local host          */
  18.     *locdomain = "AC.UK",    /* Name of domain that is local to us */
  19.     *sitesignature = "Mail System (MMDF)",
  20.                   /* in signature field of return-mail  */
  21.     *mmdflogin = "mmdf",            /* login name for mmdf         */
  22.     *supportaddr = "mmdf@Ucl-Cs.AC.UK";
  23.                 /* where to send bug reports, etc.      */
  24.  
  25. /*  *****************  DEFAULT BASE DIRECTORIES  *********************** */
  26.  
  27. /*  The following pathnames define the default working directories for
  28.  *  MMDF activities.  Specific files usually will be referenced relative
  29.  *  to these directories.  To override the default, the specific filename
  30.  *  should be specified as an anchored pathname, beginning with a slash.
  31.  *
  32.  *  The following pathnames must be anchored.
  33.  */
  34.  
  35. char
  36.     *cmddfldir = "/usr/mmdf/lib",
  37.                   /* contains MMDF commands, such as      */
  38.                   /* submit, deliver, and queclean        */
  39.     *logdfldir = "/usr/spool/mmdflogs",
  40.                   /* contains highly volatile files, such */
  41.                   /* as logs and check-point markers      */
  42.     *phsdfldir = "/usr/spool/mmdflogs/phase",
  43.                   /* contains timestamp files             */
  44.     *tbldfldir = "/usr/mmdf/mmdftable",
  45.                   /* contains sticky files, such as       */
  46.                   /* name tables & dialing scripts        */
  47.     *tbldbm = "/usr/spool/mmdfdbm",
  48.                   /* dbm() hash of name tables      */
  49.     *quedfldir = "/usr/spool/mmdflock/que",
  50.                   /* contains queued mail files, in       */
  51.                   /* subordinate directories              */
  52.                   /* (also see below)                     */
  53.     *chndfldir = "/usr/mmdf/lib/chans",
  54.                   /* contains the channel programs        */
  55.                   /* (ch_*) called by deliver             */
  56.     *lckdfldir = "/tmp/mmdf";
  57.                 /* Directory for lock files SEK           */
  58.  
  59.  
  60. /*  ***************  DEFAULT LOG LOCATIONS & SETTINGS  ***************** */
  61.  
  62. char    mlogloc[] = "msg.log";
  63. char    chlogloc[] = "chan.log";
  64.  
  65. /*  It is common for specific using processes to tailor the second
  66.  *  field, which is the log entry label, so that you can tell which
  67.  *  incarnation of the process made a set of entries.
  68.  *
  69.  *  These structures conform to ll_log.h
  70.  */
  71.  
  72. struct ll_struct
  73.             msglog =      /* deliver, submit, & queclean          */
  74. {
  75.     mlogloc, "XX-0000", LLOGGEN, 40, LLOGSOME, 0
  76. },
  77.  
  78.            chanlog =      /* log for channels & user agents       */
  79. {
  80.     chlogloc, "UA-0000", LLOGGEN, 40, LLOGSOME, 0
  81. };
  82.  
  83. /* Needed for user authorisation logging        */
  84.  
  85. struct ll_struct authlog =
  86. {
  87.     "auth.log", "AU-0000", LLOGGEN, 40, LLOGSOME, 0
  88. };
  89.  
  90. short domsg;
  91.  
  92. /*  ****************  MESSAGE QUEUE SUBSTRUCTURE  ********************** */
  93.  
  94. /*  The queue has a top-level, locking directory, which only trusted
  95.  *  processes can get through.  Under that is a base working directory.
  96.  *  Below that are three directories which contain queued messages data
  97.  *
  98.  *  quedfldir[] specifies the top-level and base directories.
  99.  */
  100.  
  101. int     queprot = 0700;           /* protection on quedfldir parent      */
  102.  
  103. /* the next five are relative to quedfldir[] */
  104.  
  105. char
  106.     *deadletter = "DeadLetters",
  107.                 /* File for dead letters                */
  108.     *tquedir = "temp/",   /* sub-directory for builing            */
  109.                   /* address list file for msg            */
  110.     *aquedir = "addr/",   /* sub-dir with files of address        */
  111.                   /* lists for queued mail; files are     */
  112.                   /* linked into here from tquedir        */
  113.                   /* as last act of queuing msg           */
  114.     *squepref = "q.",    /* preface sub-queue name with this        */
  115.     *mquedir = "msg/";   /* sub-dir containing text of           */
  116.                   /* queued messages; file names          */
  117.                   /* are same as in aquedir               */
  118.  
  119. /*  The following two parameters establish thresholds for queue residency
  120.  *  limits.  If a message does not move out of the queue by warntime,
  121.  *  a notice may be sent to the originator.  If it is still in the queue
  122.  *  by failtime, it is removed from the queue and may be returned to the
  123.  *  originator.
  124.  */
  125.  
  126. int
  127.     warntime = 36,
  128.     failtime = 252;
  129.  
  130.  
  131. /* ******************  COMMAND NAMES & LOCATIONS  *********************** */
  132.  
  133. char
  134.     *namsubmit = "submit",      /* who to submit mail through         */
  135.     *pathsubmit = "submit",     /* location relative to cmddfldir[]   */
  136.  
  137.     *namdeliver = "deliver",    /* name of delivery overseer          */
  138.     *pathdeliver = "deliver",   /* location relative to cmddfldir[]   */
  139.  
  140.     *nampkup = "pickup",        /* name of pickup overseer            */
  141.     *pathpkup = "deliver",      /* location relative to cmddfldir[]   */
  142.  
  143.     *nammail = "v6mail",      /* the mmdf simple mail-sender        */
  144.     *pathmail = "/usr/mmdf/lib/v6mail";
  145.                     /* needs to handle special switches   */
  146.                     /* must be MMDF special mail          */
  147.  
  148. /*  *********************  SUBMIT TAILORING  ************************** */
  149.  
  150. int     maxhops = 20;               /* number of Via fields permitted   */
  151. int    mgt_addid = 0;            /* if set, add message-id if necessary */
  152. int    lnk_listsize = 12;        /* if more than this many addresses,
  153.                      * then do not send warning and only
  154.                      * send citation on return
  155.                      */
  156.  
  157.  
  158. /*   *********************  DELIVER TAILORING  ************************** */
  159.  
  160. int     maxqueue = 100;           /* maximum size of sortable queue       */
  161. int     mailsleep = 300;          /* seconds between queue sweeps by a    */
  162.                   /* background (-b) Deliver              */
  163.  
  164. /*   *********************  ADDRESS TRANSFORMATION  ********************* */
  165.  
  166.  
  167. /*  Format:
  168.  *
  169.  *  Original host name, New hostname, String appended to mailbox
  170.  *
  171.  *      e.g.        "DCrocker at UDel-EE"
  172.  *      maps to     "DCrocker.EE at UDel"
  173.  *
  174.  *  Note the usage, for Darcom.  It is designed to bypass address
  175.  *  mapping, so that "foo at bar" does not go out as "foo.bar at relay"
  176.  */
  177.  
  178. LOCVAR struct ap_hstab hstab[] =
  179. {
  180.     0, 0, 0,
  181. };
  182. struct ap_hstab *ap_exhstab = hstab;
  183.  
  184. /* *****************  LOCAL DELIVERY TAILORING  ************************* */
  185.  
  186. /*  Obviously, the following is only needed if there is local delivery,
  187.  *  rather than pure relaying (a rare, but permitted mode).  Simplest
  188.  *  determinor is ch_okloc in conf_chan.c
  189.  */
  190.  
  191. int     sentprotect = 0600;         /* protection on mail files             */
  192.  
  193. char
  194.     *dlvfile = ".maildelivery", /* User specified delivery instructions */
  195.     *sysdlvfile = (char *)0,  /* if non-zero, the default dlvfile */
  196.     *mldfldir = {0},      /* directory to contain users' file     */
  197.                   /* for receiving local mail.  if this   */
  198.                   /* spec is empty, recipient's login     */
  199.                   /* directory will be used.              */
  200.     *mldflfil = ".mail",      /* file to receive new mail             */
  201.                   /* relative to mldfldir[] or to login   */
  202.                   /*   dir if mldfldir[] is empty         */
  203.                   /* if this spec empty, user's login     */
  204.                   /* name will be name of file            */
  205.     *delim1 = "\001\001\n",   /* Note short UCL delimiter - SEK       */
  206.     *delim2 = "\001\001\n";
  207.                   /* add to begin and end of messages     */
  208.                   /* NOTE:  to avoid author spoofin,      */
  209.                   /* lo_wtmail() catches mail that        */
  210.                   /* has either of these strings in it    */
  211.                   /* and changes the first char           */
  212.                   /* (it increments its ascii value)      */
  213.  
  214.  
  215. /*  *****************  UUCP CHANNEL TAILORING  *********************** */
  216.  
  217. char    *Uchan = "uucp";            /* default channel name */
  218. char    *Uuxstr = "uux - -r";       /* command string to start UUX */
  219.  
  220. /* **************** NIFTP CHANNEL TAILORING  ************************** */
  221.  
  222. char    *pn_quedir   = "/usr/spool/jntmail";
  223.                 /* Location of JNTmail queues for NIFTP */
  224.  
  225. /* ************ MULTIPLE HOST TAILORING *******************************  */
  226. /*                                                                       */
  227. /*  This variable is initialised to be the name of the local machine     */
  228. /*  It is used to transparently forward between the UCL machines         */
  229.  
  230.  
  231. char    *locmachine = "Ucl-Cs";
  232.                 /* variable into which this name is read */
  233.  
  234. /******************* AUTHORIZATION TAILORING **************************/
  235. char  *authrequest = "authorisation@Ucl-Cs";
  236.                 /* authorisation request address        */
  237. char *authfile = "/etc/mmdf/warning";
  238.                 /* warning letter - full pathname       */
  239.  
  240.